﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using DTO_MechSys;
using BLL_MechSys;

namespace FORMS_MechSys
{
    public partial class frmProdutoCadastro : Form
    {
        System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frmProdutoCadastro));

        DataTable dataTableGridView = new DataTable();
        List<DTOProduto> ListProdutos = new List<DTOProduto>();




        DTOProduto dtoProdutoADD = new DTOProduto();
        BLLProduto bllProduto = new BLLProduto();
        BLLFornecedor bllFornecedor = new BLLFornecedor();
        BLLCategoria bllCategoria = new BLLCategoria();
        DTOCor dtoCorPrincipal = new DTOCor();
        DTOCor dtoCorLetra = new DTOCor();
        DTOCor dtoCorFundo = new DTOCor();
        DTOCor dtoCorDataGrid = new DTOCor();
        BLLCor bllCor = new BLLCor();

        public frmProdutoCadastro()
        {
            InitializeComponent();
            SetColors();
            PopulaGrid();
            btn_barraUp_Click(null, null);
            Habilitar(false);
        }

        private void SetColors()
        {
            //
            //
            dtoCorPrincipal = bllCor.Buscar("Principal");
            lbl1.BackColor = tlp_dados.BackColor = tlpCrud.BackColor = tlpPesquisa.BackColor = dtoCorPrincipal.Cor;
            toolStrip1.BackColor = btn_barraDown.BackColor = btn_barraUp.BackColor = btn_pesquisar.BackColor = dtoCorPrincipal.Cor;
            btnCadastrarFornecedor.BackColor = btnCadastrarCategoria.BackColor = btnBuscarFornecedor.BackColor = btnBuscarCategoria.BackColor = btnNovo.BackColor = btnEditar.BackColor = btnCancelar.BackColor = btnExcluir.BackColor = btnSalvar.BackColor = dtoCorPrincipal.Cor;
            //

            //
            //
            dtoCorFundo = bllCor.Buscar("Fundo");
            tlpPrincipal.BackColor = dtoCorFundo.Cor;
            //

            //
            //
            dtoCorDataGrid = bllCor.Buscar("DataGrid");
            dtGridProdutos.BackgroundColor = dtoCorDataGrid.Cor;
            //


            //
            //
            dtoCorLetra = bllCor.Buscar("Letra");
            lbl1.ForeColor = lbl10.ForeColor = lbl2.ForeColor = lbl3.ForeColor = lbl4.ForeColor = lbl5.ForeColor = lbl6.ForeColor = lbl7.ForeColor = lbl8.ForeColor = lbl9.ForeColor = dtoCorLetra.Cor;
            btnBuscarCategoria.ForeColor = btnBuscarFornecedor.ForeColor = btnCadastrarCategoria.ForeColor = btnCadastrarFornecedor.ForeColor = btnCancelar.ForeColor = dtoCorLetra.Cor;
            btnEditar.ForeColor = btnExcluir.ForeColor = btnNovo.ForeColor = btnSalvar.ForeColor = rbtnEmLinha.ForeColor = rbtnForaLinha.ForeColor = dtoCorLetra.Cor;

            //

        }


        //EFEITOS
        #region
        private void btnNovo_EnabledChanged(object sender, EventArgs e)
        {
            if (btnNovo.Enabled)
            {
                btnNovo.BackColor = dtoCorPrincipal.Cor;
                btnNovo.ForeColor = dtoCorLetra.Cor;
                this.btnNovo.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("btnEditar.BackgroundImage")));
            }
            else
                btnNovo.BackColor = dtoCorFundo.Cor;

        }

        private void btnEditar_EnabledChanged(object sender, EventArgs e)
        {
            if (btnEditar.Enabled)
            {
                btnEditar.BackColor = dtoCorPrincipal.Cor;
                btnEditar.ForeColor = dtoCorLetra.Cor;
                this.btnEditar.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("btnEditar.BackgroundImage")));

            }
            else
                btnEditar.BackColor = dtoCorFundo.Cor;
        }

        private void btnCancelar_EnabledChanged(object sender, EventArgs e)
        {
            if (btnCancelar.Enabled)
            {

                btnCancelar.BackColor = dtoCorPrincipal.Cor;
                btnCancelar.ForeColor = dtoCorLetra.Cor;
                this.btnCancelar.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("btnEditar.BackgroundImage")));

            }
            else
                btnCancelar.BackColor = dtoCorFundo.Cor;
        }

        private void btnExcluir_EnabledChanged(object sender, EventArgs e)
        {
            if (btnExcluir.Enabled)
            {

                btnExcluir.BackColor = dtoCorPrincipal.Cor;
                btnExcluir.ForeColor = dtoCorLetra.Cor;
                this.btnExcluir.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("btnEditar.BackgroundImage")));

            }
            else
                btnExcluir.BackColor = dtoCorFundo.Cor;
        }

        private void btnSalvar_EnabledChanged(object sender, EventArgs e)
        {
            if (btnSalvar.Enabled)
            {
                btnSalvar.BackColor = dtoCorPrincipal.Cor;
                btnSalvar.ForeColor = dtoCorLetra.Cor;
                this.btnSalvar.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("btnEditar.BackgroundImage")));
            }
            else
                btnSalvar.BackColor = dtoCorFundo.Cor;
        }

        private void btnEditar_MouseLeave(object sender, EventArgs e)
        {
            if (btnEditar.Enabled)
            {
                btnEditar.BackColor = dtoCorPrincipal.Cor;
                btnEditar.ForeColor = dtoCorLetra.Cor;
                this.btnEditar.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("btnEditar.BackgroundImage")));
            }
        }

        private void btnEditarkkkkkkk(object sender, EventArgs e)
        {
            btnEditar.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(194)))), ((int)(((byte)(224)))), ((int)(((byte)(255)))));
            btnEditar.ForeColor = Color.Black;
            this.btnEditar.BackgroundImage = ((System.Drawing.Image)(null));
        }

        private void btnCancelar_MouseLeave(object sender, EventArgs e)
        {
            if (btnCancelar.Enabled)
            {
                btnCancelar.BackColor = dtoCorPrincipal.Cor;
                btnCancelar.ForeColor = dtoCorLetra.Cor;
                this.btnCancelar.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("btnEditar.BackgroundImage")));
            }
        }

        private void btnCancelarkkkkkkk(object sender, EventArgs e)
        {
            btnCancelar.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(194)))), ((int)(((byte)(224)))), ((int)(((byte)(255)))));
            btnCancelar.ForeColor = Color.Black;
            this.btnCancelar.BackgroundImage = ((System.Drawing.Image)(null));
        }

        private void btnExcluir_MouseLeave(object sender, EventArgs e)
        {
            if (btnExcluir.Enabled)
            {
                btnExcluir.BackColor = dtoCorPrincipal.Cor;
                btnExcluir.ForeColor = dtoCorLetra.Cor;
                this.btnExcluir.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("btnEditar.BackgroundImage")));
            }
        }

        private void btnExcluirkkkkkkk(object sender, EventArgs e)
        {
            btnExcluir.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(194)))), ((int)(((byte)(224)))), ((int)(((byte)(255)))));
            btnExcluir.ForeColor = Color.Black;
            this.btnExcluir.BackgroundImage = ((System.Drawing.Image)(null));

        }

        private void btnSalvar_MouseLeave(object sender, EventArgs e)
        {
            if (btnSalvar.Enabled)
            {
                btnSalvar.BackColor = dtoCorPrincipal.Cor;
                btnSalvar.ForeColor = dtoCorLetra.Cor;
                this.btnSalvar.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("btnEditar.BackgroundImage")));
            }
        }

        private void btnSalvarkkkkkkk(object sender, EventArgs e)
        {
            btnSalvar.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(194)))), ((int)(((byte)(224)))), ((int)(((byte)(255)))));
            btnSalvar.ForeColor = Color.Black;
            this.btnSalvar.BackgroundImage = ((System.Drawing.Image)(null));
        }

        private void btnNovo_MouseLeave(object sender, EventArgs e)
        {
            if (btnNovo.Enabled)
            {
                btnNovo.BackColor = dtoCorPrincipal.Cor;
                btnNovo.ForeColor = dtoCorLetra.Cor;
                this.btnNovo.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("btnEditar.BackgroundImage")));
            }
        }

        private void btnNovokkkkkkk(object sender, EventArgs e)
        {
            btnNovo.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(194)))), ((int)(((byte)(224)))), ((int)(((byte)(255)))));
            btnNovo.ForeColor = Color.Black;
            this.btnNovo.BackgroundImage = ((System.Drawing.Image)(null));
        }

        #endregion

        public void Limpar()
        {
            txtCategoria.Clear();
            txtCodigo.Clear();
            txtDescricao.Clear();
            txtEstoqueMinimo.Clear();
            txtFornecedor.Clear();
            txtQuantidade.Clear();
            txtValorCompra.Clear();
            txtValorVenda.Clear();
            txtPesquisar.Clear();
        }

        public void Habilitar(bool status)
        {
            tlp_dados.Enabled = status;
            btnNovo.Enabled = !status;
            btnEditar.Enabled = !status;
            btnExcluir.Enabled = !status;
            btnCancelar.Enabled = status;
            btnSalvar.Enabled = status;

            if (dtGridProdutos.Rows.Count <= 0)
            {
                btnEditar.Enabled = false;
                btnExcluir.Enabled = false;
            }
        }

        private void btnNovo_Click(object sender, EventArgs e)
        {
            Habilitar(true);
            Limpar();
            dtoProdutoADD.ProdutoID = 0;

            txtDescricao.Focus();
        }

        private void btnCancelar_Click(object sender, EventArgs e)
        {
            Habilitar(false);
            Limpar();
        }

        public void PopulaGrid()
        {
            DataRow dataRow;
            dataTableGridView = new DataTable();
            List<DTOProduto> ListProdutoTemp;
            if (ckb_somenteForaLinha.Checked)
                ListProdutoTemp = bllProduto.BuscarProdutosCadastradosForaLinha();
            else if (ckb_exibirForaLinha.Checked)
                ListProdutoTemp = bllProduto.BuscarProdutosCadastrados();
            else
                ListProdutoTemp = bllProduto.BuscarProdutosCadastradosLinha();

            if (ListProdutos != ListProdutoTemp)
            {
                ListProdutos = ListProdutoTemp;
                if (ListProdutos.Count > 0)
                {
                    dataTableGridView.Columns.Add("ProdutoID", typeof(int));
                    dataTableGridView.Columns.Add("Descrição", typeof(string));
                    dataTableGridView.Columns.Add("CategoriaID", typeof(int));
                    dataTableGridView.Columns.Add("FornecedorID", typeof(int));
                    dataTableGridView.Columns.Add("Valor", typeof(double));
                    dataTableGridView.Columns.Add("Valor Compra", typeof(double));
                    dataTableGridView.Columns.Add("Estoque Minimo", typeof(int));
                    dataTableGridView.Columns.Add("Quantidade", typeof(int));
                    dataTableGridView.Columns.Add("Descontinuando", typeof(bool));

                    foreach (DTOProduto dtoProduto in ListProdutos)
                    {
                        dataRow = dataTableGridView.NewRow();

                        dataRow["ProdutoID"] = dtoProduto.ProdutoID;
                        dataRow["Descrição"] = dtoProduto.Descricao;
                        dataRow["CategoriaID"] = dtoProduto.CategoriaID;
                        dataRow["FornecedorID"] = dtoProduto.FornecedorID;
                        dataRow["Valor"] = dtoProduto.Valor;
                        dataRow["Valor Compra"] = dtoProduto.ValorCompra;
                        dataRow["Estoque Minimo"] = dtoProduto.EstoqueMinimo;
                        dataRow["Quantidade"] = dtoProduto.Quantidade;
                        dataRow["Descontinuando"] = dtoProduto.Descontinuado;

                        // Adiciona linha ao DataTable.
                        dataTableGridView.Rows.Add(dataRow);
                    }
                }
                dtGridProdutos.DataSource = null;
                dtGridProdutos.DataSource = dataTableGridView;
            }
        }

        public void PopulaGrid(string descricao, int codigo)
        {
            DataRow dataRow;
            dataTableGridView = new DataTable();
            List<DTOProduto> ListProdutoTemp;
            if (ckb_somenteForaLinha.Checked)
                ListProdutoTemp = bllProduto.BuscarProdutosCadastradosForaLinha();
            else if (ckb_exibirForaLinha.Checked)
                ListProdutoTemp = bllProduto.PesquisarProdutos(descricao, codigo);
            else
                ListProdutoTemp = bllProduto.BuscarProdutosCadastradosLinha();

            if (ListProdutos != ListProdutoTemp)
            {
                ListProdutos = ListProdutoTemp;
                if (ListProdutos.Count > 0)
                {
                    dataTableGridView.Columns.Add("ProdutoID", typeof(int));
                    dataTableGridView.Columns.Add("Descrição", typeof(string));
                    dataTableGridView.Columns.Add("CategoriaID", typeof(int));
                    dataTableGridView.Columns.Add("FornecedorID", typeof(int));
                    dataTableGridView.Columns.Add("Valor", typeof(double));
                    dataTableGridView.Columns.Add("Valor Compra", typeof(double));
                    dataTableGridView.Columns.Add("Estoque Minimo", typeof(int));
                    dataTableGridView.Columns.Add("Quantidade", typeof(int));
                    dataTableGridView.Columns.Add("Descontinuando", typeof(bool));

                    foreach (DTOProduto dtoProduto in ListProdutos)
                    {
                        dataRow = dataTableGridView.NewRow();

                        dataRow["ProdutoID"] = dtoProduto.ProdutoID;
                        dataRow["Descrição"] = dtoProduto.Descricao;
                        dataRow["CategoriaID"] = dtoProduto.CategoriaID;
                        dataRow["FornecedorID"] = dtoProduto.FornecedorID;
                        dataRow["Valor"] = dtoProduto.Valor;
                        dataRow["Valor Compra"] = dtoProduto.ValorCompra;
                        dataRow["Estoque Minimo"] = dtoProduto.EstoqueMinimo;
                        dataRow["Quantidade"] = dtoProduto.Quantidade;
                        dataRow["Descontinuando"] = dtoProduto.Descontinuado;

                        // Adiciona linha ao DataTable.
                        dataTableGridView.Rows.Add(dataRow);
                    }
                }

                dtGridProdutos.DataSource = null;
                dtGridProdutos.DataSource = dataTableGridView;
            }
        }

        private void btnSalvar_Click(object sender, EventArgs e)
        {
            double teste;
            if (txtDescricao.Text != "")
            {
                if (txtCategoria.Text != "")
                {
                    if (txtFornecedor.Text != "")
                    {
                        if (txtValorCompra.Text != "" && double.TryParse(txtValorCompra.Text, out teste))
                        {
                            if (txtValorVenda.Text != "" && double.TryParse(txtValorCompra.Text, out teste))
                            {
                                dtoProdutoADD.Descricao = txtDescricao.Text;
                                if (!string.IsNullOrWhiteSpace(txtEstoqueMinimo.Text))
                                    dtoProdutoADD.EstoqueMinimo = Int32.Parse(txtEstoqueMinimo.Text);
                                if (!string.IsNullOrWhiteSpace(txtValorCompra.Text))
                                    dtoProdutoADD.ValorCompra = float.Parse(txtValorCompra.Text);
                                if (!string.IsNullOrWhiteSpace(txtValorVenda.Text))
                                    dtoProdutoADD.Valor = float.Parse(txtValorVenda.Text);
                                if (!string.IsNullOrWhiteSpace(txtQuantidade.Text))
                                    dtoProdutoADD.Quantidade = Int32.Parse(txtQuantidade.Text);

                                if (rbtnEmLinha.Checked)
                                    dtoProdutoADD.Descontinuado = true;
                                else
                                    dtoProdutoADD.Descontinuado = false;
                                if (dtoProdutoADD.ProdutoID == 0)
                                    bllProduto.Inserir(dtoProdutoADD);
                                else
                                    bllProduto.Atualizar(dtoProdutoADD); 
                                Limpar();
                                PopulaGrid();
                                Habilitar(false);
                            }
                            else
                                new frmMessageBox().Show("Campo Valor de Venda em branco ou inválido!", "Campo Inválido", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        }
                        else
                            new frmMessageBox().Show("Campo Valor de Compra em branco ou inválido!", "Campo Inválido", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    }
                    else
                        new frmMessageBox().Show("Campo Fornecedor em branco!", "Campo Inválido", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
                else
                    new frmMessageBox().Show("Campo Categoria em branco ou inválido!", "Campo Inválido", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else
                new frmMessageBox().Show("Os campos Descrição, Fornecedor, Categoria, Valor de Compra e Valor de Venda são obrigatórios!", "Campos em Branco", MessageBoxButtons.OK, MessageBoxIcon.Warning);

        }

        private void dtGridProdutos_DataSourceChanged(object sender, EventArgs e)
        {
            if (dtGridProdutos.Rows.Count > 5)
                this.WindowState = FormWindowState.Maximized;

            if (dtGridProdutos.Rows.Count <= 0)
            {
                btnEditar.Enabled = false;
                btnExcluir.Enabled = false;
            }

        }

        private void btnExcluir_Click(object sender, EventArgs e)
        {
            if (new frmMessageBox().Show("Devido a importância do registro deste produto ele não pode ser apagado.\nDeseja salvá-lo como fora de linha?", "Aviso", MessageBoxButtons.YesNoCancel) == System.Windows.Forms.DialogResult.Yes)
            {
                dtGridProdutos_CellClick(null, null);
                bllProduto.Excluir(dtoProdutoADD.ProdutoID);

                Limpar();
                Habilitar(false);
                ckb_exibirForaLinha.Checked = false;
                PopulaGrid();
                dtGridProdutos_CellClick(null, null);
            }
        }

        private void dtGridProdutos_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            if (dtGridProdutos.CurrentCellAddress.X != -1 && dtGridProdutos.CurrentCellAddress.Y != -1)
            {
                dtoProdutoADD.ProdutoID = Int32.Parse(dtGridProdutos.Rows[dtGridProdutos.CurrentCellAddress.Y].Cells["ProdutoID"].Value.ToString());
                txtCodigo.Text = dtoProdutoADD.ProdutoID.ToString();
                txtDescricao.Text = dtGridProdutos.Rows[dtGridProdutos.CurrentCellAddress.Y].Cells["Descrição"].Value.ToString();
                dtoProdutoADD.CategoriaID = (int)dtGridProdutos.Rows[dtGridProdutos.CurrentCellAddress.Y].Cells["CategoriaID"].Value;
                dtoProdutoADD.FornecedorID = (int)dtGridProdutos.Rows[dtGridProdutos.CurrentCellAddress.Y].Cells["FornecedorID"].Value;
                txtValorVenda.Text = dtGridProdutos.Rows[dtGridProdutos.CurrentCellAddress.Y].Cells["Valor"].Value.ToString();
                txtValorCompra.Text = dtGridProdutos.Rows[dtGridProdutos.CurrentCellAddress.Y].Cells["Valor Compra"].Value.ToString();
                txtEstoqueMinimo.Text = dtGridProdutos.Rows[dtGridProdutos.CurrentCellAddress.Y].Cells["Estoque Minimo"].Value.ToString();
                txtQuantidade.Text = dtGridProdutos.Rows[dtGridProdutos.CurrentCellAddress.Y].Cells["Quantidade"].Value.ToString();
                bool descont = bool.Parse(dtGridProdutos.Rows[dtGridProdutos.CurrentCellAddress.Y].Cells["Descontinuando"].Value.ToString());

                txtCategoria.Text = bllCategoria.BuscarDescicaoPorCategoriaID(dtoProdutoADD.CategoriaID).Descricao;
                txtFornecedor.Text = bllFornecedor.BuscarRazaoPorFornecedorID(dtoProdutoADD.FornecedorID).Razao;


                rbtnEmLinha.Checked = descont;
                rbtnForaLinha.Checked = !descont;


                Habilitar(false);
                btnEditar.Enabled = true;
            }
        }

        private void btnBuscarCategoria_Click(object sender, EventArgs e)
        {
            new frmSelecionarGenerico("Categoria").ShowDialog();

            if (!string.IsNullOrEmpty(BLLUtilitarios.categoriaDescricao))
            {
                txtCategoria.Text = BLLUtilitarios.categoriaDescricao;
                dtoProdutoADD.CategoriaID = BLLUtilitarios.categoriaID;
            }
            BLLUtilitarios.categoriaID = 0;
            BLLUtilitarios.categoriaDescricao = null;
        }

        private void btnBuscarFornecedor_Click(object sender, EventArgs e)
        {
            new frmSelecionarGenerico("Fornecedor").ShowDialog();

            if (!string.IsNullOrEmpty(BLLUtilitarios.fornecedorNome))
            {
                txtFornecedor.Text = BLLUtilitarios.fornecedorNome;
                dtoProdutoADD.FornecedorID = BLLUtilitarios.fornecedorID;
            }
            BLLUtilitarios.fornecedorID = 0;
            BLLUtilitarios.fornecedorNome = null;

        }

        private void toolStripButtonSair_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void ckb_exibirForaLinha_CheckedChanged(object sender, EventArgs e)
        {
            PopulaGrid();
            Limpar();
            Habilitar(false);
        }

        private void btnEditar_Click(object sender, EventArgs e)
        {
            dtGridProdutos_CellClick(null, null);
            Habilitar(true);
            txtDescricao.Focus();
        }

        private void btn_barraDown_Click(object sender, EventArgs e)
        {
            panel1.Visible = true;
            this.tlpPrincipal.RowStyles[0] = (new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 37F));
            this.tlpPrincipal.RowStyles[1] = (new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 220F));
            this.tlpPrincipal.RowStyles[2] = (new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 50F));
            this.tlpPrincipal.RowStyles[3] = (new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
            btn_barraDown.Visible = false;
        }

        private void btn_barraUp_Click(object sender, EventArgs e)
        {
            panel1.Visible = false;
            this.tlpPrincipal.RowStyles[0] = (new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 0F));
            this.tlpPrincipal.RowStyles[1] = (new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 220F));
            this.tlpPrincipal.RowStyles[2] = (new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 50F));
            this.tlpPrincipal.RowStyles[3] = (new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
            btn_barraDown.Visible = true;

        }

        private void btn_pesquisar_Click(object sender, EventArgs e)
        {
            int cod = new int();

            Int32.TryParse(txtPesquisar.Text, out cod);
            PopulaGrid(txtPesquisar.Text + "%", cod);


        }

        private void btnCadastrarCategoria_Click(object sender, EventArgs e)
        {
            new frmCategoriaCadastro().ShowDialog();
        }

        private void btnCadastrarFornecedor_Click(object sender, EventArgs e)
        {
            new frmFornecedorCadastro().ShowDialog();
        }

        private void ckb_somenteForaLinha_CheckedChanged(object sender, EventArgs e)
        {
            if (ckb_exibirForaLinha.Checked)
            {
                PopulaGrid();
                Limpar();
                Habilitar(false);
            }
            else
                ckb_exibirForaLinha.Checked = true;
        }



    }
}
